package cn.initcap.validate;

import org.springframework.web.context.request.ServletWebRequest;

/**
 * 验证码处理器，封装不同的验证码处理逻辑
 *
 * @author initcap
 * @date Created in 2018/5/18 PM10:24.
 */
public interface ValidateCodeProcessor {

    String SESSION_KEY_PREFIX = "SESSION_KEY_FOR_CODE_";

    /**
     * 创建验证码
     *
     * @param request 请求
     * @throws Exception 抛出异常
     */
    void create(ServletWebRequest request) throws Exception;

    /**
     * 校验验证码
     *
     * @param servletWebRequest 请求
     */
    void validate(ServletWebRequest servletWebRequest);
}
